<?php
// +----------------------------------------------------------------------
// | RXThinkCMF框架 [ RXThinkCMF ]
// +----------------------------------------------------------------------
// | 版权所有 2017~2020 南京RXThinkCMF研发中心
// +----------------------------------------------------------------------
// | 官方网站: http://www.rxthink.cn
// +----------------------------------------------------------------------
// | Author: 牧羊人 <1175401194@qq.com>
// +----------------------------------------------------------------------

namespace app\admin\widget;


use think\facade\View;
use think\template\TagLib;

/**
 * 富文本编辑器组件
 * @author 牧羊人
 * @since 2020/7/2
 * Class Editor
 * @package app\admin\taglib
 */
class Editor extends TagLib
{
    // 自定义标签列表
    protected $tags = [
        'kindeditor' => ['attr' => 'name,type,dirname,width,height', 'close' => 0],
    ];

    /**
     * Kind编辑器组件
     * @param $tag 标签参数
     * @return string
     * @author 牧羊人
     * @since 2020/7/2
     */
    public function tagKindeditor($tag)
    {
        // 标签名称(组件ID)
        $name = trim($tag['name']);
        // 组件名称特殊化处理
        if (strpos($name, "__")) {
            $nameArr = explode('__', $name);
            $name = "<?php echo $nameArr[0]?>" . "__" . $nameArr[1];
        }

        // 标签类型
        $type = isset($tag['type']) ? trim($tag['type']) : "default";
        // 组件宽度
        $width = isset($tag['width']) ? $tag['width'] : "100%";
        // 组件高度
        $height = isset($tag['height']) ? $tag['height'] : 300;

        // 绑定参数
        $rootUrl = str_replace('http://www.', '', trim(SITE_URL, '/'));
        View::assign("kindeditor_content", isset($_GET['component']) ? $_GET['component'] : '');
        View::assign("rootUrl", $rootUrl);
        View::assign("type", $type);
        View::assign("kindeditorId", $name);
        View::assign("width", $width);
        View::assign("height", $height);
        // 模板渲染
        return View::fetch("widget/editor/kindeditor");
    }

}